Doppler effect
The change in frequency of a wave (or other periodic event) for an observer moving relative to its source
When source is approaching listener, the wavefronts are compressed and frequency is perceived as higher
When source is moving away from the listener the wavefronts are more separated so perceived frequency is lower
If source is moving around the listener in a circle, there is no change in frequency, no matter the speed!
Useful equations
The important part of the velocity is the one moving towards or away from the listener
The perpendicular velocity is irrelevant (no Doppler on a circle)
Unless the speed is really really fast! (the frequency of rotation approaches audio frequencies ~ 20Hz)
When movement is not directly towards or away, the velocity used to calculate Doppler is the projection on the line connecting the listener and the source
Software implementation
Audio is stored in a buffer in memory
Instead of reading buffer linearly, the speed of reading is modified according to the relative speed
If doing it in real-time must be be stored in a buffer, otherwise we would need to look into the future when source is approaching!